package homework.day03;

import java.io.*;

/**
 * 将当前目录下的所有obj文件获取到，并进行
 * 反序列化后输出每个用户的信息(直接输出反序
 * 列化后的User对象即可)
 * @author Xiloer
 *
 */
public class Test02 {
    public static void main(String[] args) throws IOException, ClassNotFoundException {
        File dir = new File(".");
        File[] subs = dir.listFiles(f ->f.getName().endsWith(".obj"));
        for (int i = 0; i < subs.length; i++) {
            File sub = subs[i];
            FileInputStream fis = new FileInputStream(sub);
            ObjectInputStream ois = new ObjectInputStream(fis);
            Object obj = ois.readObject();
            User user = (User)obj;
            if(obj instanceof User){
                System.out.println(user);
            }
        }
    }
}

/*
    提示代码:
	需要用到的语句，尝试按照正确顺序将下列代码并放在main方法中完成需求，
	并在注释中标注每句话的作用，
	//【获取当前目录下的所有文件】
    File dir = new File(".");

    //【进行循环】
    for(int i=0;i<subs.length;i++){

    }

    //【获取以".obj"结尾的所有文件名】
    File[] subs = dir.listFiles((f)->f.getName().endsWith(".obj"));

    //【创建低级输入流fis】
    FileInputStream fis = new FileInputStream(sub);

    //【从数组中获取每一个obj文件】
    File sub = subs[i];//从数组中获取每一个obj文件

    //【输出user】
    System.out.println(user);

    //【创建反序列化读取流ois】
    ObjectInputStream ois = new ObjectInputStream(fis);

    //【在这里标注该句代码意义】
    User user = (User)obj;

    //【在这里标注该句代码意义】
    Object obj = ois.readObject();

    //【在这里标注该句代码意义】
    if(obj instanceof User){

    }

 */